본문으로 이동
메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.
Random Forest
여러 개의 결정 트리들을 임의적으로 학습하는 방식의 앙상블 방법으로서, 여러가지 학습기들을 생성한 후 이를 선형 결합하여 최종 학습기를 만드는 방법

  • 의사결정 나무: 여러가지 요소를 기준으로 갈라지는 가지를 트리형태로 구성하여 분석하는 기법
  • 앙상블 학습: 주어진 데이터를 여러 모델로 학습하고 종합하여 정확도를 높이는 기법
  • 배깅(Bagging): 같은 알고리즘으로 여러 개의 분류기를 만들어서 결합하는 앙상블 학습 기법

의사결정트리의 한계

편집 원본 편집
  • 학습 데이터에 따라 생성되는 결정 트리가 크게 달라져 일반화가 어려운 과적합 문제 발생
  • 계층적 접근방식으로, 중간에 에러 발생 시 하위 계층으로 에러 전파

랜덤 포레스트 특징

편집 원본 편집
  • 임의성: 서로 조금씩 다른 특성의 트리들로 구성
  • 비상관화: 각 트리들의 예측이 서로 연관되지 않음
  • 견고성: 오류가 전파되지 않아 노이즈에 강함
  • 일반화: 임의화를 통한 과적합 문제 극복

랜덤 포레스트 주요 기법

편집 원본 편집

배깅을 통한 포레스트 구성

편집 원본 편집

  • 부트스트랩(bootstrap)을 통해 조금씩 다른 훈련 데이터에 대해 훈련된 기초 분류기(base learner)들을 결합(aggregating)시키는 방법

랜덤 노드 최적화

편집 원본 편집

  • 분석에 사용되는 변수를 랜덤하게 추출
  • 훈련 단계에서 훈련의 목적 함수를 최대로 만드는 매개변수 최적값 도출

자주 나오는 정리

편집 원본 편집
  • 부트스트랩 표본으로 여러 의사결정 나무를 만들고, 분류는 투표(다수결), 회귀는 평균으로 결과를 낸다.
  • 나무를 분할할 때마다 설명변수의 일부만 임의로 골라 쓰므로 나무끼리 상관이 낮아진다. 배깅과 다른 점이다.
  • 트리의 수를 늘려도 과대적합이 생기지 않는다. 트리가 많을수록 일반화 오차가 일정한 값으로 수렴할 뿐이다. 다만 계산량이 늘어난다.
  • 변수 중요도를 알 수 있지만, 나무 하나처럼 규칙을 바로 해석하기는 어렵다.